<!--SIF Implementation Specification 2.2-6 (March 17, 2008)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.sifinfo.org/infrastructure/2.x" xmlns:sif="http://www.sifinfo.org/infrastructure/2.x" elementFormDefault="qualified">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="imports/xml/xml.xsd" />
  <xs:complexType name="LessonType">
    <xs:annotation>
      <xs:documentation>
							A series of Activities and LearningResources tied together under a particular topic or period of time to deliver a
							particular educational concept or skill.
						</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SourceObjects" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SourceObject" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:annotation>
                  <xs:documentation>Reference to the source object.</xs:documentation>
                </xs:annotation>
                <xs:simpleContent>
                  <xs:extension base="sif:IdRefType">
                    <xs:attribute name="SIF_RefObject" use="required">
                      <xs:annotation>
                        <xs:documentation>The type of learning object being referred to.</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="Assessment" />
                          <xs:enumeration value="LearningResource" />
                          <xs:enumeration value="Activity" />
                          <xs:enumeration value="Lesson" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CurriculumStructures" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CurriculumStructureRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>A GUID reference to the parent CurriculumStructure object of this Lesson.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SubjectArea" minOccurs="0" nillable="true" type="sif:SubjectAreaType" />
      <xs:element name="Title" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Name of lesson.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Duration" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Desired duration of the lesson</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="xs:unsignedInt">
              <xs:attribute name="Units" use="required">
                <xs:annotation>
                  <xs:documentation>Unit of time of the Duration value.</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="week" />
                    <xs:enumeration value="day" />
                    <xs:enumeration value="hour" />
                    <xs:enumeration value="minute" />
                    <xs:enumeration value="second" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:string">
        <xs:annotation>
          <xs:documentation>Description of the lesson plan.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Procedure" minOccurs="0" nillable="true" type="xs:string">
        <xs:annotation>
          <xs:documentation>Text field to describe how to use and implement the lesson.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Strategies" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Strategy" minOccurs="0" maxOccurs="unbounded" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Teaching strategy used in this lesson plan.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="LearningObjectives" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearningObjective" minOccurs="0" maxOccurs="unbounded" type="xs:string">
              <xs:annotation>
                <xs:documentation>Description of learning objective(s) for this lesson, i.e., "Student will be able to use Pythagorean Theorem."—equates to 'benchmark' or 'goal' or other terminology</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SupportingActivities" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ActivityRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>Links to Activity objects that may support the lesson</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="LearningStandards" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearningStandardItemRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>Link to an associated LearningStandardItem. This allows for a single Lesson to be aligned to multiple standard statements.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="LearningResources" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearningResourceRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>Link to an aligned LearningResource object.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="LessonSources" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LessonSource" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Author" minOccurs="0" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Name" minOccurs="0" nillable="true" type="sif:NameType">
                          <xs:annotation>
                            <xs:documentation>Name of the author.</xs:documentation>
                          </xs:annotation>
                        </xs:element>
                        <xs:element name="Organization" minOccurs="0" nillable="true" type="xs:normalizedString">
                          <xs:annotation>
                            <xs:documentation>Organization name.</xs:documentation>
                          </xs:annotation>
                        </xs:element>
                        <xs:element name="Address" minOccurs="0" nillable="true" type="sif:AddressType">
                          <xs:annotation>
                            <xs:documentation>Address of the author.</xs:documentation>
                          </xs:annotation>
                        </xs:element>
                        <xs:element name="Email" minOccurs="0" nillable="true" type="sif:EmailType">
                          <xs:annotation>
                            <xs:documentation>Email address of the author.</xs:documentation>
                          </xs:annotation>
                        </xs:element>
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType" />
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute ref="xml:lang" use="required" />
  </xs:complexType>

  <xs:element name="Lesson" type="sif:LessonType" />

</xs:schema>